package org.colafries.admin.entity.vo.index;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Builder;
import lombok.Data;

import java.time.LocalDateTime;

/**
 * @author Ann
 * @version v1.0
 * @ClassName LogicFactTableRespVO
 * @Description
 * @date Created in 2024/6/3
 **/
@Data
@Builder
public class LogicFactTblRespVO {

    @ApiModelProperty(value = "逻辑表code", dataType = "string")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Long code;

    /**
     * 版本
     */
    @ApiModelProperty(value = "版本", dataType = "integer")
    private Integer version;

    /**
     * 逻辑表英文名
     */
    @ApiModelProperty(value = "逻辑表英文名", dataType = "string")
    private String logicTableName;

    /**
     * 逻辑表名称
     */
    @ApiModelProperty(value = "逻辑表名称", dataType = "string")
    private String logicTableAlias;

    /**
     * 数据源id
     */
    @ApiModelProperty(value = "数据源", dataType = "integer")
    private Integer sourceDbId;

    /**
     * schema
     */
    @ApiModelProperty(value = "schema", dataType = "string")
    private String sourceSchema;

    /**
     * 来源表
     */
    @ApiModelProperty(value = "来源表", dataType = "string")
    private String sourceTableName;

    /**
     * SQL筛选条件
     */
    @ApiModelProperty(value = "SQL筛选条件", dataType = "string")
    private String expression;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间", dataType = "string")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;

    /**
     * 修改时间
     */
    @ApiModelProperty(value = "修改时间", dataType = "string")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;

    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人", dataType = "string")
    private String createUser;

    /**
     * 修改人
     */
    @ApiModelProperty(value = "修改人", dataType = "string")
    private String updateUser;
}
